package com.yupi.generator;

import freemarker.template.TemplateException;
import com.yupi.generator.file.DynamicGenerator;
import com.yupi.generator.file.StaticGenerator;
import java.io.File;
import java.io.IOException;
import com.yupi.model.DataModel;

/**
 * @version 1.0
 * @Author yupi
 * @Date 2024-09-24 20:11:09
 * @注释 动静结合
 */
public class MainGenerator {


    public static void doGenerate(DataModel model) throws IOException, TemplateException {
        String inputRootPath = ".source/springboot-init-master";
        String outputRootPath="generated";

        String inputPath;
        String outputPath;
    //有分组
        String password=model.mysqlConfig.password;
        String url=model.mysqlConfig.url;
        String username=model.mysqlConfig.username;

    //有分组
        String description=model.docsConfig.description;
        String title=model.docsConfig.title;
        String version=model.docsConfig.version;

    //有分组
        boolean needDocs=model.needDocs;

    //有分组
        boolean needPost=model.needPost;

    //有分组
        boolean needCors=model.needCors;

    //有分组
        String basePackage=model.basePackage;

        if(needPost){
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/MessageHandler.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/MessageHandler.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/exception/BusinessException.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/exception/BusinessException.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/PageRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/PageRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/MyBatisPlusConfig.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/MyBatisPlusConfig.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/UserRoleEnum.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/UserRoleEnum.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/exception/GlobalExceptionHandler.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/exception/GlobalExceptionHandler.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/LoginUserVO.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/LoginUserVO.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/resources/application-prod.yml").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/resources/application-prod.yml").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/CosClientConfig.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/CosClientConfig.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/WxOpenConfig.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/WxOpenConfig.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/EventHandler.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/EventHandler.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/constant/UserConstant.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/constant/UserConstant.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/DeleteRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/DeleteRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserAddRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserAddRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/FileUploadBizEnum.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/FileUploadBizEnum.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/entity/User.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/entity/User.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/ResultUtils.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/ResultUtils.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/CorsConfig.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/CorsConfig.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/utils/SqlUtils.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/utils/SqlUtils.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/controller/UserController.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/controller/UserController.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/resources/application-test.yml").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/resources/application-test.yml").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpMsgRouter.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpMsgRouter.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/utils/SpringContextUtils.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/utils/SpringContextUtils.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/aop/LogInterceptor.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/aop/LogInterceptor.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/service/UserService.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/service/UserService.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateMyRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateMyRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/constant/CommonConstant.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/constant/CommonConstant.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/ErrorCode.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/ErrorCode.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/controller/FileController.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/controller/FileController.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/resources/test_excel.xlsx").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/resources/test_excel.xlsx").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/aop/AuthInterceptor.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/aop/AuthInterceptor.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/service/impl/UserServiceImpl.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/service/impl/UserServiceImpl.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserRegisterRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserRegisterRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/resources/banner.txt").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/resources/banner.txt").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/constant/FileConstant.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/constant/FileConstant.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/resources/mapper/UserMapper.xml.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/resources/mapper/UserMapper.xml").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/resources/META-INF/additional-spring-configuration-metadata.json").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/resources/META-INF/additional-spring-configuration-metadata.json").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/UserVO.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/UserVO.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserQueryRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserQueryRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/utils/NetUtils.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/utils/NetUtils.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/MainApplication.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/MainApplication.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/controller/WxMpController.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/controller/WxMpController.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/mapper/UserMapper.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/mapper/UserMapper.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/exception/ThrowUtils.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/exception/ThrowUtils.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/manager/CosManager.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/manager/CosManager.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/BaseResponse.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/BaseResponse.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpConstant.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpConstant.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/file/UploadFileRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/file/UploadFileRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/JsonConfig.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/JsonConfig.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/SubscribeHandler.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/SubscribeHandler.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserLoginRequest.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserLoginRequest.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/resources/application.yml.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/resources/application.yml").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/annotation/AuthCheck.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/annotation/AuthCheck.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);

        }


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/MessageHandler.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/MessageHandler.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/test/java/com/yupi/springbootinit/MainApplicationTests.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/test/java/com/yupi/springbootinit/MainApplicationTests.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/constant/CommonConstant.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/constant/CommonConstant.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/exception/BusinessException.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/exception/BusinessException.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"sql/create_table.sql").getAbsolutePath();
         outputPath=new File(outputRootPath,"sql/create_table.sql").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/UserRoleEnum.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/UserRoleEnum.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/exception/GlobalExceptionHandler.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/exception/GlobalExceptionHandler.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/LoginUserVO.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/LoginUserVO.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/resources/application-prod.yml").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/resources/application-prod.yml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/CosClientConfig.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/CosClientConfig.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/misc.xml").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/misc.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/test/.DS_Store").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/test/.DS_Store").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/config/JsonConfig.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/config/JsonConfig.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/constant/UserConstant.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/constant/UserConstant.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/EventHandler.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/EventHandler.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/controller/FileController.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/controller/FileController.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/workspace.xml.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/workspace.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/aop/LogInterceptor.class.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/aop/LogInterceptor.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/service/UserService.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/service/UserService.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserAddRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserAddRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/aop/AuthInterceptor.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/aop/AuthInterceptor.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/FileUploadBizEnum.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/enums/FileUploadBizEnum.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/META-INF/additional-spring-configuration-metadata.json").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/META-INF/additional-spring-configuration-metadata.json").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/common/ResultUtils.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/common/ResultUtils.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/MainApplication.class.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/MainApplication.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/jarRepositories.xml").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/jarRepositories.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/enums/FileUploadBizEnum.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/enums/FileUploadBizEnum.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/resources/application-test.yml").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/resources/application-test.yml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserAddRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserAddRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".mvn/wrapper/maven-wrapper.properties").getAbsolutePath();
         outputPath=new File(outputRootPath,".mvn/wrapper/maven-wrapper.properties").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/utils/SpringContextUtils.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/utils/SpringContextUtils.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpMsgRouter.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpMsgRouter.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/vo/LoginUserVO.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/vo/LoginUserVO.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/test_excel.xlsx").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/test_excel.xlsx").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/service/UserService.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/service/UserService.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/utils/NetUtils.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/utils/NetUtils.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/compiler.xml").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/compiler.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/constant/CommonConstant.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/constant/CommonConstant.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/wxmp/handler/EventHandler.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/wxmp/handler/EventHandler.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/controller/FileController.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/controller/FileController.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/aop/AuthInterceptor.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/aop/AuthInterceptor.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/service/impl/UserServiceImpl.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/service/impl/UserServiceImpl.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserRegisterRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserRegisterRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/enums/UserRoleEnum.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/enums/UserRoleEnum.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"pom.xml.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"pom.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/constant/FileConstant.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/constant/FileConstant.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/resources/mapper/UserMapper.xml.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/resources/mapper/UserMapper.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/MainApplication.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/MainApplication.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/easyCodeTableSetting.xml").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/easyCodeTableSetting.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/annotation/AuthCheck.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/annotation/AuthCheck.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/dto/file/UploadFileRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/dto/file/UploadFileRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/utils/SpringContextUtils.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/utils/SpringContextUtils.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/.DS_Store").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/.DS_Store").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/wxmp/handler/SubscribeHandler.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/wxmp/handler/SubscribeHandler.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/mapper/UserMapper.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/mapper/UserMapper.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/exception/ThrowUtils.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/exception/ThrowUtils.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserLoginRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserLoginRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/manager/CosManager.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/manager/CosManager.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/mapper/UserMapper.xml.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/mapper/UserMapper.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/BaseResponse.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/BaseResponse.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpConstant.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/WxMpConstant.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/META-INF/spring-configuration-metadata.json.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/META-INF/spring-configuration-metadata.json").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/file/UploadFileRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/file/UploadFileRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/JsonConfig.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/JsonConfig.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserRegisterRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserRegisterRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/SubscribeHandler.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/wxmp/handler/SubscribeHandler.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserLoginRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserLoginRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/resources/application.yml.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/resources/application.yml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/annotation/AuthCheck.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/annotation/AuthCheck.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/controller/UserController.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/controller/UserController.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/PageRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/PageRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/MyBatisPlusConfig.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/MyBatisPlusConfig.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"doc/swagger.png").getAbsolutePath();
         outputPath=new File(outputRootPath,"doc/swagger.png").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/encodings.xml").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/encodings.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/exception/GlobalExceptionHandler.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/exception/GlobalExceptionHandler.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/exception/BusinessException.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/exception/BusinessException.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/utils/SqlUtils.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/utils/SqlUtils.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/WxOpenConfig.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/WxOpenConfig.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/mapper/UserMapper.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/mapper/UserMapper.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/test-classes/com/yupi/springbootinit/MainApplicationTests.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/test-classes/com/yupi/springbootinit/MainApplicationTests.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/DeleteRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/DeleteRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/constant/FileConstant.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/constant/FileConstant.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserQueryRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserQueryRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/config/MyBatisPlusConfig.class.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/config/MyBatisPlusConfig.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".DS_Store").getAbsolutePath();
         outputPath=new File(outputRootPath,".DS_Store").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/config/CorsConfig.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/config/CorsConfig.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/entity/User.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/entity/User.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/ResultUtils.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/ResultUtils.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/common/PageRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/common/PageRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/wxmp/WxMpConstant.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/wxmp/WxMpConstant.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


        if(needCors){
              inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/config/CorsConfig.java.ftl").getAbsolutePath();
              outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/config/CorsConfig.java").getAbsolutePath();
              DynamicGenerator.doGenerate(inputPath,outputPath,model);
        }


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/utils/SqlUtils.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/utils/SqlUtils.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/common/ErrorCode.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/common/ErrorCode.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/service/impl/UserServiceImpl.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/service/impl/UserServiceImpl.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"sql/post_es_mapping.json").getAbsolutePath();
         outputPath=new File(outputRootPath,"sql/post_es_mapping.json").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/controller/UserController.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/controller/UserController.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/.gitignore").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/.gitignore").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/entity/User.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/entity/User.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/controller/WxMpController.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/controller/WxMpController.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/aop/LogInterceptor.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/aop/LogInterceptor.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/wxmp/WxMpMsgRouter.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/wxmp/WxMpMsgRouter.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/application-prod.yml").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/application-prod.yml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/manager/CosManager.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/manager/CosManager.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/wxmp/handler/MessageHandler.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/wxmp/handler/MessageHandler.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserUpdateRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserUpdateRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/banner.txt").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/banner.txt").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateMyRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserUpdateMyRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/common/ErrorCode.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/common/ErrorCode.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".gitignore").getAbsolutePath();
         outputPath=new File(outputRootPath,".gitignore").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/resources/test_excel.xlsx").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/resources/test_excel.xlsx").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/resources/banner.txt").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/resources/banner.txt").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/constant/UserConstant.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/constant/UserConstant.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/resources/META-INF/additional-spring-configuration-metadata.json").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/resources/META-INF/additional-spring-configuration-metadata.json").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserUpdateMyRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/dto/user/UserUpdateMyRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,".idea/vcs.xml").getAbsolutePath();
         outputPath=new File(outputRootPath,".idea/vcs.xml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/config/WxOpenConfig.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/config/WxOpenConfig.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/UserVO.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/vo/UserVO.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserQueryRequest.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/model/dto/user/UserQueryRequest.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/utils/NetUtils.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/utils/NetUtils.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/exception/ThrowUtils.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/exception/ThrowUtils.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"src/main/java/com/yupi/springbootinit/controller/WxMpController.java.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"src/main/java/com/yupi/springbootinit/controller/WxMpController.java").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/model/vo/UserVO.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/model/vo/UserVO.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"Dockerfile").getAbsolutePath();
         outputPath=new File(outputRootPath,"Dockerfile").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/application.yml.ftl").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/application.yml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/common/BaseResponse.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/common/BaseResponse.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/common/DeleteRequest.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/common/DeleteRequest.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/application-test.yml").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/application-test.yml").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);


         inputPath=new File(inputRootPath,"target/classes/com/yupi/springbootinit/config/CosClientConfig.class").getAbsolutePath();
         outputPath=new File(outputRootPath,"target/classes/com/yupi/springbootinit/config/CosClientConfig.class").getAbsolutePath();
         DynamicGenerator.doGenerate(inputPath,outputPath,model);



    }

}
